iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 3
0
自我挑戰組

Tensorflow學習日記系列 第 3

Tensorflow學習日記Day3 TensorFlow和Keras

  • 分享至 

  • xImage
  •  

一、TensorFlow架構
處理器:可以在CPU、GPU、TPU執行
平台:具跨平台能力,可以目前主流的平台執行。
TensorFlow Distributed Execution Engine(分散式執行引擎):
深度學習中花最多時間的就是模型訓練,TensorFlow具備分散式運算能力,可以同時在數百台的機型訓練,大量縮短訓練時間。
前端語言:TensorFlow可以使用多種前端語言但對Python的支援最好。
高階API:TensorFlow 是較低階的深度學習API,所以臂瘀自行設計各種深度學習模型,缺點是開發需要更多程式碼,需要花更多時間。所以以TensorFlow為底層開發了很多高階API,如Keras。
二、TensorFlow簡介
TensorFlow由Tensor和Flow組成。
Tensor張量
在數學裡,張量是一種幾何實體,或是廣義上的數量,在此的數量包含純量相量和矩陣。零維的是純量一維的是向量,二維以上是矩陣。
Flow資料流程
TensorFlow的程式都是先建立計算圖,我們可以用TensorFlow提供的模組以不同的程式語言建立計算圖。可以設計張量運算流程,並建構各種深度學習或機器學習模型。建立計算圖完成後,就可以在不同平台執行計算圖。
三、TensorFlow程式設計模式
分為建立計算圖和執行計算圖。
建立計算圖:
使用TensorFlow提供的模組建立計算圖,建構各種深度學習或機器學習模型。
執行計算圖:
建立Session執行計算圖,在TensorFlow中Session的作用是在用戶端和執行裝置間建立連結。有了這個連結可將計算圖在不同裝置中執行,之後任何裝置間的資料傳遞都須透過Session。
四、Keras簡介
Keras使用起來的效率比TensorFlow好很多。Keras只處理模型建立訓練和預測,必須配合後端引擎進行運算。
五、Keras程式設計模式
Keras的程式設計就像是在做一個多層蛋糕。
建立Sequential模型
Sequential模型市多個神經網路層的線性堆疊。可以想像他是一個蛋糕架。
加入輸入層與隱藏層至模型
Keras已經內建各式神經網路層,只需在之前建立的模型上加入你選擇的網路層就好了,就像在蛋糕架中加入蛋糕層一樣簡單。
加入輸出層至模型
加入輸出層至模型就好像在加一層蛋糕。
六、Keras與TensorFlow的比較
https://scontent.ftpe8-2.fna.fbcdn.net/v/t1.15752-9/70622783_397542611184574_7381001877720137728_n.png?_nc_cat=100&_nc_oc=AQlRarHl1_SwZv97J98zkiuJV0BEr0ho2N1kvGJb8hMhsFTby43_9eeysWwsvOWBTudT2yIN0ua0CmJVL8cx7E7s&_nc_ht=scontent.ftpe8-2.fna&oh=d8e3314f109a0dcb010fa27b7a8c17d1&oe=5E03FDA2
資料來源:TensorFlow +keras深度學習人工智慧實務應用


上一篇
Tensorflow學習日記Day2 深度學習的原理
下一篇
Tensorflow學習日記Day4 架設環境
系列文
Tensorflow學習日記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言